server:main.o worker.o tidArrInit.o recvn.o stringStack.o taskQueue.o threadPool.o initTcp.o epoll_ctl.o func_cd.o func_ls.o func_pwd.o func_gets.o func_puts.o func_mkdir.o func_rmdir.o func_remove.o 
	gcc main.o worker.o tidArrInit.o recvn.o stringStack.o taskQueue.o threadPool.o initTcp.o epoll_ctl.o func_cd.o func_ls.o func_pwd.o func_gets.o func_puts.o func_mkdir.o func_rmdir.o func_remove.o -o server -lpthread  -lcrypt
main.o:main.c
	gcc -c main.c -o main.o -g -Wall
worker.o:worker.c
	gcc -c worker.c -o worker.o -g -Wall
tidArrInit.o:tidArrInit.c                       
	gcc -c tidArrInit.c -o tidArrInit.o -g -Wall
taskQueue.o:taskQueue.c
	gcc -c taskQueue.c -o taskQueue.o -g -Wall
threadPool.o:threadPool.c
	gcc -c threadPool.c -o threadPool.o -g -Wall
initTcp.o:initTcp.c
	gcc -c initTcp.c -o initTcp.o -g -Wall
epoll_ctl.o:epoll_ctl.c
	gcc -c epoll_ctl.c -o epoll_ctl.o -g -Wall
stringStack.o:stringStack.c
	gcc -c stringStack.c -o stringStack.o -g -Wall
recvn.o:recvn.c
	gcc -c recvn.c -o recvn.o -g -Wall
func_cd.o:func_cd.c
	gcc -c func_cd.c -o func_cd.o -g -Wall
func_ls.o:func_ls.c
	gcc -c func_ls.c -o func_ls.o -g -Wall
func_puts.o:func_puts.c
	gcc -c func_puts.c -o func_puts.o -g -Wall
func_gets.o:func_gets.c
	gcc -c func_gets.c -o func_gets.o -g -Wall
func_remove.o:func_remove.c
	gcc -c func_remove.c -o func_remove.o -g -Wall
func_pwd.o:func_pwd.c
	gcc -c func_pwd.c -o func_pwd.o -g -Wall
func_mkdir.o:func_mkdir.c
	gcc -c func_mkdir.c -o func_mkdir.o -g -Wall
func_rmdir.o:func_rmdir.c
	gcc -c func_rmdir.c -o func_rmdir.o -g -Wall
clean:
	rm -f *.o all
